home *** CD-ROM | disk | FTP | other *** search
/ Internet Info 1994 March / Internet Info CD-ROM (Walnut Creek) (March 1994).iso / networking / terms / kermit / b / ckoker.mak < prev    next >
Encoding:
Text File  |  1993-07-09  |  6.7 KB  |  190 lines

  1. # CKOKER.MAK, Version 3.02
  2. # See CKOMAK.HLP for further information.
  3. # Last update: Mon Jul  5 14:20:40 1993
  4. #
  5. # -- Makefile to build C-Kermit 5A(189) for OS/2 --
  6. #
  7. # The result is a runnable program called CKOKER.EXE in the current directory.
  8. #
  9. # The 32-bit versions run only on OS/2 2.00 or higher.
  10.  
  11. #---------- Compiler targets:
  12. #
  13. # To build: "[dn]make -f ckoker.mak <target>"
  14.  
  15. unknown:
  16.     @echo Please specify target: "msc ibmc gcc"
  17.  
  18. # Microsoft C 6.00 (16-bit):
  19. #
  20. # When (if) the LINK step doesn't work: (a) make sure the MSC directories are
  21. # ahead of the OS/2 directories in your PATH; (b) if LINK complains about not
  22. # finding LLIBCEP.LIB (because NMAKE inserted "/NOD:LLIBCE.LIB LLIBCEP.LIB"
  23. # into the LINK options), just tell it to use LLIBCE.LIB.
  24. # LINK might also ask you about TCPIPDLL.LIB.  If you don't have one,
  25. # just hit Enter.
  26. #
  27. # Warning: If the compiler complains about "Unrecoverable heap overflow", add
  28. # the -B3C3L option after -W2, within the quotes.  This requires C3L.EXE on
  29. # disk.  (This problem has been observed with MSC 6.00A, but not 6.00.)
  30. #
  31. #    IMPORTANT: When building with TCP/IP support, edit the IBM-supplied
  32. #    TCPIP\INCLUDE\NETLIB.H to remove the spurious #define for SIGALRM!
  33.  
  34. # release version
  35. msc:
  36.     $(MAKE) -f ckoker.mak all \
  37.     CC="cl -nologo -W2 -Od -FPc -AL" OUT="-o" O=".obj" \
  38.     OPT="-Ot -B3C3L" DEBUG="-Gs" DLL="-Alfw -Gs -Zl" \
  39.     CFLAGS="-Au -J -Zap -G2 -Gt8 -UMSDOS" \
  40.     LDFLAGS="-F 9A00 -Lp -link /noe /packc /packd /exep" \
  41.     DEF="ckoker.def"
  42.  
  43. # debugging version
  44. mscd:
  45.     $(MAKE) -f ckoker.mak all \
  46.     CC="cl -nologo -W2 -Od -FPc -AL" OUT="-o" O=".obj" \
  47.     OPT="" DEBUG="-Zi" DLL="-Alfw -Gs -Zl" \
  48.     CFLAGS="-Au -J -Zap -G2 -Gt8 -UMSDOS" \
  49.     LDFLAGS="-F 9A00 -Lp -link /noe /packc /packd /exep" \
  50.     DEF="ckoker.def"
  51.  
  52. # IBM C Set/2 (32-bit) with static linking -- no DLL's required.
  53. # Which is good, because otherwise users would need to have the IBM
  54. # OS/2 development system C libraries on their PCs.
  55. #
  56. # Except the TCP/IP support is linked dynamically.  A dummy TCP/IP DLL is
  57. # produced for those who do not have TCP/IP installed.  TCP/IP is not linked
  58. # statically because IBM keeps issuing CSDs for it, so this way C-Kermit gets
  59. # the TCP/IP fixes automatically without having to be rebuilt.  Also, dynamic
  60. # linking keeps the size of the .EXE down.
  61. #
  62. # -G4 optimizes for the i486 pipeline.  It might make the program run a bit
  63. # faster on 486 and above, but it also increases the size of .EXE by about
  64. # 30K.  The result still runs OK on i386 processors.
  65. # Add -G4 to the CC= line below if you want i486 optimization.
  66. #
  67. # msgbind does not use any environment variables to find DDE4.MSG.  Therefore,
  68. # its path (on the system where you are building C-Kermit) must be edited into
  69. # CKOKER.MSB, or the DDE4.MSG file must be copied into the current directory.
  70. # It is normally found in IBMCPP\HELP.
  71.  
  72. # release version
  73. ibmc:
  74.     $(MAKE) -f ckoker.mak all \
  75.     CC="icc -q -Sm -Gm -Gt" OUT="-Fe" O=".obj" \
  76.     OPT="-O" DEBUG="-Gs" DLL="-Gs" \
  77.     CFLAGS="-Sp1 -D__STDC__" LDFLAGS="" \
  78.     DEF="ckoker32.def"
  79.     msgbind ckoker.msb
  80.  
  81. # profiling version
  82. ibmcp:
  83.     $(MAKE) -f ckoker.mak all \
  84.     CC="icc -q -Sm -Gm -Gt" OUT="-Fe" O=".obj" \
  85.     OPT="-O" DEBUG="-Gs -Gh -Ti" DLL="-Gs" \
  86.     CFLAGS="-Sp1 -D__STDC__" LDFLAGS="dde4xtra.obj" \
  87.     DEF="ckoker32.def"
  88.  
  89. # debugging version
  90. ibmcd:
  91.     $(MAKE) -f ckoker.mak all \
  92.     CC="icc -q -Sm -Gm -Gt" OUT="-Fe" O=".obj" \
  93.     OPT="" DEBUG="-Ti -D__DEBUG" DLL="-Gs" \
  94.     CFLAGS="-Sp1 -D__STDC__" LDFLAGS="" \
  95.     DEF="ckoker32.def"
  96.  
  97. # emx 0.8f + gcc 2.3.3 (32-bit)
  98.  
  99. # release version
  100. gcc:
  101.     $(MAKE) -f ckoker.mak all \
  102.     CC="gcc -Zomf" OUT="-o" O=".obj" \
  103.     OPT="-O" DEBUG="-s" DLL="-Zdll" \
  104.     CFLAGS="" LDFLAGS="" \
  105.     DEF="ckoker32.def"
  106.  
  107. # debugging version
  108. gccd:
  109.     $(MAKE) -f ckoker.mak all \
  110.     CC="gcc" OUT="-o" O=".o" \
  111.     OPT="" DEBUG="-g" DLL="-Zdll" \
  112.     CFLAGS="" LDFLAGS="" \
  113.     DEF="ckoker32.def"
  114.  
  115. #---------- Macros:
  116.  
  117. # To build with TCP/IP support, if you have the TCP/IP libraries and
  118. # and header files, comment out the following DEFINES line and then uncomment
  119. # two commented lines after it:
  120. DEFINES = -DOS2 -DDYNAMIC -DNETCONN -DDECNET
  121. # DEFINES = -DOS2 -DDYNAMIC -DNETCONN -DDECNET -DTCPSOCKET -DTCPIBM
  122. # LIBS = tcpipdll.lib
  123.  
  124. #---------- Inference rules:
  125.  
  126. .SUFFIXES: .w .c $(O)
  127.  
  128. .c$(O):
  129.     $(CC) $(CFLAGS) $(DEBUG) $(OPT) $(DEFINES) -c $*.c
  130.  
  131. #---------- Targets:
  132.  
  133. OBJS =    ckcmai$(O) ckcfns$(O) ckcfn2$(O) ckcfn3$(O) ckcpro$(O) \
  134.         ckuxla$(O) ckucmd$(O) ckuusr$(O) ckuus2$(O) ckuus3$(O) \
  135.         ckuus4$(O) ckuus5$(O) ckuus6$(O) ckuus7$(O) ckuusx$(O) \
  136.     ckuusy$(O) ckudia$(O) ckuscr$(O) ckufio$(O) ckocon$(O) \
  137.         ckotio$(O) ckonet$(O) ckcnet$(O)
  138.  
  139. all: ckoker.exe ckotcp.dll
  140.  
  141. ckoker.exe: $(OBJS) $(DEF)
  142.     $(CC) $(DEBUG) $(OBJS) $(DEF) $(OUT) $@ $(LIBS) $(LDFLAGS)
  143.  
  144. ckotcp.dll: ckotcp.c ckotcp.def
  145.     $(CC) $(DLL) $(OUT) $@ ckotcp.c ckotcp.def
  146.  
  147. ckwart.exe: ckwart$(O) $(DEF)
  148.     $(CC) $(DEBUG) ckwart$(O) $(DEF) $(OUT) $@ $(LIBS) $(LDFLAGS)
  149.  
  150. #---------- Dependencies:
  151.  
  152. ckcmai$(O):    ckcmai.c ckcker.h ckcdeb.h ckcasc.h ckcsym.h ckcnet.h
  153. ckcfns$(O):    ckcfns.c ckcker.h ckcdeb.h ckcasc.h ckcsym.h ckcxla.h ckuxla.h
  154. ckcfn2$(O):    ckcfn2.c ckcker.h ckcdeb.h ckcasc.h ckcsym.h ckcxla.h ckuxla.h
  155. ckcfn3$(O):    ckcfn3.c ckcker.h ckcdeb.h ckcasc.h ckcsym.h ckcxla.h ckuxla.h
  156. ckcpro$(O):    ckcpro.c ckcker.h ckcdeb.h ckcasc.h
  157. ckuxla$(O):    ckuxla.c ckcker.h ckcdeb.h ckcxla.h ckuxla.h
  158. ckucmd$(O):    ckucmd.c ckcker.h ckcdeb.h ckcasc.h ckucmd.h
  159.     $(CC) $(CFLAGS) $(DEBUG) $(DEFINES) -c $*.c
  160. ckudia$(O):    ckudia.c ckcker.h ckcdeb.h ckcasc.h ckucmd.h
  161.     $(CC) $(CFLAGS) $(DEBUG) $(DEFINES) -c $*.c
  162. ckuscr$(O):    ckuscr.c ckcker.h ckcdeb.h ckcasc.h
  163. ckuusr$(O):    ckuusr.c ckcker.h ckcdeb.h ckcasc.h ckuusr.h ckucmd.h \
  164.           ckcxla.h ckuxla.h ckcnet.h
  165. ckuus2$(O):    ckuus2.c ckcker.h ckcdeb.h ckcasc.h ckuusr.h ckucmd.h \
  166.           ckcxla.h ckuxla.h
  167. ckuus3$(O):    ckuus3.c ckcker.h ckcdeb.h ckcasc.h ckuusr.h ckucmd.h \
  168.           ckcxla.h ckuxla.h ckcnet.h
  169. ckuus4$(O):    ckuus4.c ckcker.h ckcdeb.h ckcasc.h ckuusr.h ckucmd.h \
  170.           ckcxla.h ckuxla.h ckuver.h ckcnet.h
  171. ckuus5$(O):    ckuus5.c ckcker.h ckcdeb.h ckcasc.h ckuusr.h ckucmd.h
  172. ckuus6$(O):    ckuus6.c ckcker.h ckcdeb.h ckcasc.h ckuusr.h ckucmd.h
  173. ckuus7$(O):    ckuus7.c ckcker.h ckcdeb.h ckcasc.h ckuusr.h ckucmd.h \
  174.           ckcxla.h ckuxla.h ckcnet.h
  175. ckuusx$(O):    ckuusx.c ckcker.h ckcdeb.h ckcasc.h ckuusr.h
  176. ckuusy$(O):    ckuusy.c ckcker.h ckcdeb.h ckcasc.h
  177. ckufio$(O):    ckufio.c ckcker.h ckcdeb.h ckuver.h ckodir.h ckoker.h
  178. ckocon$(O):    ckocon.c ckcker.h ckcdeb.h ckcasc.h ckoker.h
  179. ckotio$(O):    ckotio.c ckcker.h ckcdeb.h ckuver.h ckodir.h ckoker.h
  180. ckonet$(O):    ckonet.c ckcker.h ckcdeb.h ckoker.h ckcnet.h ckonet.h
  181.     $(CC) $(CFLAGS) $(DEBUG) $(DEFINES) -c $*.c
  182. ckcnet$(O):    ckcnet.c ckcker.h ckcdeb.h ckcnet.h ckonet.h
  183.  
  184. ckcpro.c:    ckcpro.w
  185.         $(MAKE) -f ckoker.mak ckwart.exe \
  186.           CC="$(CC)" OUT="$(OUT)" O="$(O)" OPT="$(OPT)" \
  187.           DEBUG="$(DEBUG)" CFLAGS="$(CFLAGS)" LDFLAGS="$(LDFLAGS)"
  188.         ckwart ckcpro.w ckcpro.c
  189.